export interface BookmarkNode {
  id: string;
  title: string;
  url?: string;
  children?: BookmarkNode[];
  dateAdded?: number;
  dateGroupModified?: number;
  parentId?: string;
  index?: number;
}

export interface Collection {
  id: string;
  name: string;
  description?: string;
  isPrivate: boolean;
  bookmarks: BookmarkNode[];
  createdAt: Date;
  updatedAt: Date;
}

export interface BookmarkFilter {
  query?: string;
  tags?: string[];
  collection?: string;
  isPrivate?: boolean;
}

export interface SyncStatus {
  lastSync: Date;
  status: 'idle' | 'syncing' | 'error';
  error?: string;
}
